home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 22 / CU Amiga Magazine's Super CD-ROM 22 (1998)(EMAP Images)(GB)[!][issue 1998-05].iso / PowerPC / System / PPCReleaseDEV / include / powerup / gcclib / powerup_protos.h
Encoding:
C/C++ Source or Header  |  1998-02-21  |  4.0 KB  |  132 lines

  1. #ifndef POWERUP_GCCLIB_PROTOS_H
  2. #define POWERUP_GCCLIB_PROTOS_H
  3.  
  4. #include    <dos/dos.h>
  5. #include    <powerup/ppclib/interface.h>
  6. #include    <utility/tagitem.h>
  7.  
  8. APTR    PPCAllocMem( unsigned long byteSize, unsigned long requirements );
  9. void    PPCFreeMem( APTR memoryBlock, unsigned long byteSize );
  10. APTR    PPCAllocVec( unsigned long byteSize, unsigned long requirements );
  11. void    PPCFreeVec( APTR memoryBlock);
  12. BPTR    PPCOpen( STRPTR name, long accessMode );
  13. LONG    PPCClose( BPTR file );
  14. LONG    PPCRead( BPTR file, APTR buffer, long length );
  15. LONG    PPCWrite( BPTR file, APTR buffer, long length );
  16. LONG    PPCSeek( BPTR file, long position, long offset );
  17. APTR    PPCCreatePool( unsigned long requirements, unsigned long puddleSize,
  18.     unsigned long threshSize );
  19. BOOL    PPCDeletePool( APTR poolHeader );
  20. APTR    PPCAllocPooled( APTR poolHeader, unsigned long memSize );
  21. void    PPCFreePooled( APTR poolHeader, APTR memory, unsigned long memSize );
  22. APTR    PPCAllocVecPooled( APTR poolHeader, unsigned long memSize );
  23. void    PPCFreeVecPooled( APTR poolHeader, APTR memory);
  24. ULONG    PPCCallOS(struct Caos*);
  25. ULONG    PPCCallM68k(struct Caos*);
  26. ULONG    PPCSignal(void*,ULONG);
  27. ULONG    PPCWait(ULONG);
  28. void    *PPCFindTask(char*);
  29. ULONG    PPCAllocSignal(ULONG);
  30. void    PPCFreeSignal(ULONG);
  31. void    PPCCacheFlush(APTR,ULONG);
  32. void    PPCCacheFlushAll(void);
  33. void    PPCCacheInvalid(APTR,ULONG);
  34. ULONG    PPCSetSignal(ULONG,ULONG);
  35. void    *PPCCreatePort(struct TagItem*);
  36. BOOL    PPCDeletePort(void*);
  37. void    *PPCObtainPort(struct TagItem*);
  38. BOOL    PPCReleasePort(void*);
  39. void    *PPCCreateMessage(void*,
  40.                          ULONG);
  41. void    PPCDeleteMessage(void*);
  42. void    *PPCGetMessage(void*);
  43. ULONG    PPCGetMessageAttr(void*,
  44.                           ULONG);
  45. BOOL    PPCReplyMessage(void*);
  46. BOOL    PPCSendMessage(void*,
  47.                        void*,
  48.                        void*,
  49.                        ULONG,
  50.                        ULONG);
  51. void    *PPCWaitPort(void*);
  52.  
  53. #if !defined(__SASC)
  54. int    strcmp(const char    *,
  55.                const char    *);
  56. char    *strcpy(char        *,
  57.                 const char    *);
  58. int    strlen(const char    *);
  59. #endif
  60.  
  61.  
  62. /*
  63.  * List functions for not shared and shared lists
  64.  *
  65.  */
  66.  
  67. void        PPCInsert(struct List    *,
  68.                           struct Node    *,
  69.                           struct Node    *);
  70. void        PPCAddHead(struct List *,
  71.                            struct Node *);
  72. void        PPCAddTail(struct List *,
  73.                            struct Node *);
  74. void        PPCRemove(struct Node *);
  75. struct Node*    PPCRemHead(struct List *);
  76. struct Node*    PPCRemTail(struct List *);
  77. void        PPCEnqueueSync(struct List*,
  78.                                struct Node*);
  79. struct Node*    PPCFindNameSync(struct List*,
  80.                                 char*);
  81. void        PPCNewList(struct List *);
  82.  
  83.  
  84. void        PPCInsertSync(struct List    *,
  85.                               struct Node    *,
  86.                               struct Node    *);
  87. void        PPCAddHeadSync(struct List *,
  88.                                struct Node *);
  89. void        PPCAddTailSync(struct List *,
  90.                                struct Node *);
  91. void        PPCRemoveSync(struct Node *);
  92. struct Node*    PPCRemHeadSync(struct List *);
  93. struct Node*    PPCRemTailSync(struct List *);
  94. void        PPCEnqueueSync(struct List*,
  95.                                struct Node*);
  96. struct Node*    PPCFindNameSync(struct List*,
  97.                                 char*);
  98.  
  99. struct TagItem*    PPCNextTagItem(struct TagItem**);
  100. struct TagItem*    PPCFindTagItem(Tag,
  101.                                struct TagItem*);
  102. ULONG    PPCGetTagData(Tag,
  103.                       ULONG,
  104.                       struct TagItem *);
  105.  
  106. ULONG    PPCVersion(void);
  107. ULONG    PPCRevision(void);
  108.  
  109. void    PPCReleaseSemaphore(void*);
  110. void    PPCObtainSemaphore(void*);
  111. LONG    PPCAttemptSemaphore(void*);
  112. BOOL    PPCAttemptSemaphoreShared(void*);
  113. void    PPCObtainSemaphoreShared(void*);
  114. void*    PPCCreateSemaphore(struct TagItem*);
  115. void    PPCDeleteSemaphore(void*);
  116. void*    PPCObtainSemaphoreByName(char*);
  117. void*    PPCAttemptSemaphoreByName(char*,
  118.                                   ULONG*);
  119.  
  120. APTR    PPCRawDoFmt(UBYTE*,
  121.                     APTR,
  122.                     void (*)(),
  123.                     APTR);
  124.  
  125. ULONG    PPCGetTaskAttr(ULONG);
  126.  
  127. void    PPCFinishTask(void);
  128.  
  129. ULONG    PPCGetAttr(ULONG);
  130.  
  131. #endif
  132.